package com.iespring.mapper.admin;

import com.iespring.bean.admin.goods.bo.UpdateGoodsProductsInfoBo;
import com.iespring.bean.admin.goods.vo.UpdateGoodsProductsInfoVo;
import com.iespring.bean.admin.user.entity.MallGoodsProduct;
import com.iespring.bean.admin.user.entity.MallGoodsProductExample;

import java.util.List;

import org.apache.ibatis.annotations.Param;

public interface MallGoodsProductMapper {
    long countByExample(MallGoodsProductExample example);

    int deleteByExample(MallGoodsProductExample example);

    int deleteByPrimaryKey(Integer id);

    int insert(MallGoodsProduct record);

    int insertSelective(MallGoodsProduct record);

    List<MallGoodsProduct> selectByExample(MallGoodsProductExample example);

    MallGoodsProduct selectByPrimaryKey(Integer id);

    int updateByExampleSelective(@Param("record") MallGoodsProduct record, @Param("example") MallGoodsProductExample example);

    int updateByExample(@Param("record") MallGoodsProduct record, @Param("example") MallGoodsProductExample example);

    int updateByPrimaryKeySelective(MallGoodsProduct record);

    int updateByPrimaryKey(MallGoodsProduct record);

    Integer selectCount();


    // 插入商品详细规格信息
    void addGoodsProducts(com.iespring.bean.admin.goods.po.MallGoodsProduct goodsProduct);

    // 获取商品的详细规格信息
    List<UpdateGoodsProductsInfoVo> getUpdateGoodsProductsInfo(Integer id);

    // 修改商品的详细规格信息
    void updateGoodsProductInfo(UpdateGoodsProductsInfoBo product);

    // 获取商品详细规格信息
    com.iespring.bean.admin.goods.po.MallGoodsProduct getCatGoodsProductInfo(Integer productId);

    List<MallGoodsProduct> selectByGoodsId(@Param("id") Integer id);
}